package com.gopay.common.domain.bank.wechat.scan.cmbc;

import java.io.Serializable;

import com.thoughtworks.xstream.annotations.XStreamAlias;

@XStreamAlias("body")
public class ScanPay implements Serializable{

	private static final long serialVersionUID = -6015091105583624619L;

	/**
	 * 银行商户编码
	 */
	private String merchantCode;

	/**
	 * 订单金额:订单总金额,接口中涉及的金额默认以元为单位，精确到分，默认币种为人民币
	 */
	private String totalAmount;

	/**
	 * 订单标题
	 */
	private String subject;

	/**
	 * 订单描述
	 */
	private String desc;

	/**
	 * 商户操作员编号
	 */
	private String operatorId;

	/**
	 * 商户门店编号
	 */
	private String storeId;

	/**
	 * 商户机具终端编号
	 */
	private String terminalId;
	/**
	 * 支付宝渠道可选上送，该参数是支付宝分配给下游的pid识别号，2088开头的一串16位数字,
	 * 对应支付宝的sys_service_provider_id字段 ； 微信目前用不到该参数。
	 * 
	 */
	private String source;
	/**
	 * 商品标记,支付宝目前不用上送
	 */
	private String goodsTag;

	/**
	 * 指定支付方式:目前仅当微信支付模式下可用。 1-限定不能使用信用卡支付
	 */
	private String limitPay;
	/**
	 * 指定订单的支付有效时间（分钟数），超过有效时间用户将无法支付。若不指定该参数则系统默认设置24小时支付有效时间。参数允许设置范围：1-1440区间的整数值，超过1440默认设置1440
	 */
	private Integer expireTime;
	/**
	 * 二维码链接:包含订单信息的二维码链接，商户通过该链接生成二维码供用户扫码支付
	 */
	private String qrCode;

	private String extend1;

	private String extend2;

	private String extend3;

	public String getExtend1() {
		return extend1;
	}

	public void setExtend1(String extend1) {
		this.extend1 = extend1;
	}

	public String getExtend2() {
		return extend2;
	}

	public void setExtend2(String extend2) {
		this.extend2 = extend2;
	}

	public String getExtend3() {
		return extend3;
	}

	public void setExtend3(String extend3) {
		this.extend3 = extend3;
	}

	public String getMerchantCode() {
		return merchantCode;
	}

	public void setMerchantCode(String merchantCode) {
		this.merchantCode = merchantCode;
	}

	public String getTotalAmount() {
		return totalAmount;
	}

	public void setTotalAmount(String totalAmount) {
		this.totalAmount = totalAmount;
	}

	public String getSubject() {
		return subject;
	}

	public void setSubject(String subject) {
		this.subject = subject;
	}

	public String getDesc() {
		return desc;
	}

	public void setDesc(String desc) {
		this.desc = desc;
	}

	public String getOperatorId() {
		return operatorId;
	}

	public void setOperatorId(String operatorId) {
		this.operatorId = operatorId;
	}

	public String getStoreId() {
		return storeId;
	}

	public void setStoreId(String storeId) {
		this.storeId = storeId;
	}

	public String getTerminalId() {
		return terminalId;
	}

	public void setTerminalId(String terminalId) {
		this.terminalId = terminalId;
	}

	public String getLimitPay() {
		return limitPay;
	}

	public void setLimitPay(String limitPay) {
		this.limitPay = limitPay;
	}

	public String getQrCode() {
		return qrCode;
	}

	public void setQrCode(String qrCode) {
		this.qrCode = qrCode;
	}

	public Integer getExpireTime() {
		return expireTime;
	}

	public void setExpireTime(Integer expireTime) {
		this.expireTime = expireTime;
	}

	public String getSource() {
		return source;
	}

	public void setSource(String source) {
		this.source = source;
	}

	public String getGoodsTag() {
		return goodsTag;
	}

	public void setGoodsTag(String goodsTag) {
		this.goodsTag = goodsTag;
	}

}
